//LCR 192. 把字符串转换成整数(atoi)
//实现myatoi
#include <iostream>
#include <string>
using namespace std;
//class Solution {
//public:
//    int myAtoi(std::string str)
//    {
//        if (str.size() == 0)
//        {
//            return 0;
//        }
//        else
//        {
//            int i = 0;
//            int flag = 1;
//            int num = 0;
//            int ret = 0;
//            int range = INT_MAX / 10;
//
//            //跳过空白字符
//            for (i = 0; i < str.size(); i++)
//            {
//                if (str[i] != ' ')
//                {
//                    break;
//                }
//            }
//
//            //判断符号
//            if (str[i] == '-')
//            {
//                flag = -1;
//                i++;
//            }
//            else if (str[i] == '+')
//            {
//                flag = 1;
//                i++;
//            }
//
//            for (; i < str.size(); i++)
//            {
//                //遇到非数字字符结束
//                if (str[i] < '0' || str[i] > '9')
//                {
//                    break;
//                }
//
//                if (str[i] >= '0' && str[i] <= '9')
//                {
//                    num = str[i] - '0';
//
//                    //数字已经越界
//                    if (ret > range || (ret == range && num > 7))
//                    {
//                        return flag == 1 ? INT_MAX : INT_MIN;
//                    }
//
//                    ret = ret * 10 + num;
//                }
//            }
//            return ret * flag;
//        }
//    }
//};

////415.字符串相加
//class Solution {
//public:
//    string addStrings(string num1, string num2)
//    {
//        int i = num1.size() - 1;
//        int j = num2.size() - 1;
//        int carry = 0;
//        int num = 0;
//        string ret_str;
//
//        while (i >= 0 || j >= 0)
//        {
//            int a = 0;
//            int b = 0;
//            if (i >= 0)
//            {
//                a = num1[i--] - '0';
//            }
//            else
//            {
//                a = 0;
//            }
//            if (j >= 0)
//            {
//                b = num2[j--] - '0';
//            }
//            else
//            {
//                b = 0;
//            }
//
//            num = a + b + carry;
//            carry = num / 10;
//            ret_str += num % 10 + '0';
//        }
//
//        if (carry == 1)
//        {
//            ret_str += '1';
//        }
//
//        reverse(ret_str.begin(), ret_str.end());
//        return ret_str;
//    }
//};
//
////344.反转字符串
//
//class Solution {
//public:
//    void reverseString(vector<char>& s)
//    {
//        reverse(s.begin(), s.end());
//
//        // int left = 0;
//        // int right = s.size()-1;
//
//        // while(left < right)
//        // {
//        //     char tmp = s[left];
//        //     s[left] = s[right];
//        //     s[right] = tmp;
//        //     left++;
//        //     right--;
//        // }
//    }
//};

//125.验证回文串
//class Solution {
//public:
//    bool Judge_Same_alp(const char& a, const char& b)
//    {
//        if (a == b)
//        {
//            return true;
//        }
//        else if ((a ^ b) == 32)
//        {
//            return true;
//        }
//        else
//        {
//            return false;
//        }
//    }
//
//    bool isPalindrome(string s)
//    {
//        int left = 0;
//        int right = s.size() - 1;
//
//        while (left < right)
//        {
//            while (!isalnum(s[left]) && left < right)
//            {
//                left++;
//            }
//
//            while (!isalnum(s[right]) && left < right)
//            {
//                right--;
//            }
//
//            //这里left和right都是字母或者数字
//            if (!Judge_Same_alp(s[left], s[right]))
//            {
//                return false;
//            }
//
//            left++;
//            right--;
//        }
//        return true;
//    }
//};
//
//int main()
//{
//    Solution s;
//    bool b = s.isPalindrome("race a car");
//    if (b)
//    {
//        std::cout << "true" << std::endl;
//    }
//    else
//    {
//        std::cout << "false" << std::endl;
//    }
//    return 0;
//}



int main()
{
	string s = "abcd";
	cout << s << endl;
	int k = 2;
	reverse(s.begin(), s.begin() + k);
	cout << s << endl;

	return 0;
}
